package as3.extra
{
	import flash.display.Stage;

	/**
	 * 这个类的用途:
	 * 当游戏需要自适应屏幕大小时，屏幕的尺寸大与游戏支持的最大尺寸，那么就在游戏的周围填充黑色的区域，
	 * 这个类记录了游戏场景舞台的位置跟尺寸 
	 * @author Administrator
	 * 
	 */
	public class FaceValues
	{
		public static const FACE_DEFAULT_WIDTH:int = 1440;//默认的最大的宽度
		public static const FACE_DEFAULT_HEIGHT:int = 720;//默认的最大的高度
		public static var FACE_HEIGHT:int = 720;
		public static var FACE_X:int = 0;//游戏舞台在stage上的X
		public static var FACE_Y:int = 0;//游戏舞台在stage上的Y
		public static var FACE_WIDTH:int = 0;
		public static var FACE_SCENCE_WIDTH:int = 0;
		public static const FACE_RESIZE_MIN_WIDTH:int = 1000; //默认的最小的宽度
		public static const FACE_RESIZE_MIN_HEIGTH:int = 600;//默认的最小的高度
		public static var FACE_OFFSET_X:int; //调整过后的游戏舞台的宽度
		public static var FACE_OFFSET_Y:int; //调整过后的游戏舞台的高度
		
		public static function setConstData(stage:Stage):void
		{
			if (stage.stageWidth < FaceValues.FACE_DEFAULT_WIDTH)
			{
				FaceValues.FACE_WIDTH = stage.stageWidth;
				FaceValues.FACE_X = 0;
			} 
			else
			{
				FaceValues.FACE_WIDTH = FaceValues.FACE_DEFAULT_WIDTH;
				FaceValues.FACE_X = (stage.stageWidth - FaceValues.FACE_DEFAULT_WIDTH) * 0.5;
			}
			if(stage.stageHeight < FaceValues.FACE_DEFAULT_HEIGHT)
			{
				FaceValues.FACE_Y = 0;
			}
			else
			{
				FaceValues.FACE_Y = (stage.stageHeight - FaceValues.FACE_DEFAULT_HEIGHT) * 0.5;
			}
			FaceValues.FACE_OFFSET_X = Math.max(Math.min(stage.stageWidth,FaceValues.FACE_DEFAULT_WIDTH),FaceValues.FACE_RESIZE_MIN_WIDTH);
			FaceValues.FACE_OFFSET_Y = Math.max(Math.min(stage.stageHeight,FaceValues.FACE_DEFAULT_HEIGHT),FaceValues.FACE_RESIZE_MIN_HEIGTH);
		}
	}
}